<?php

namespace app\common\model;

use think\Model;
use think\Request;
use traits\model\SoftDelete;

class Customer extends Model
{


    use SoftDelete;
    // 表名
    protected $name = 'customer';

    // 自动写入时间戳字段
    protected $autoWriteTimestamp = 'int';

    // 定义时间戳字段名
    protected $createTime = 'createtime';
    protected $updateTime = 'updatetime';

    protected $deleteTime = 'deletetime';
    // 全局查询范围
    public function scopeDefault($query)
    {
        return $query->where('is_delete', 0)->where('is_claim', 1);
    }
    
    // 重写查询方法，自动应用默认条件
    public static function scope($name = null, $args = [])
    {
        $query = parent::scope($name, $args);
        if ($name === null) {
            // 如果没有指定作用域，自动应用默认条件
            $query->where('is_delete', 0)->where('is_claim', 1);
        }
        return $query;
    }

    // 追加属性
    protected $append = [
//        'communicationStatus_text',
//        'lawsuitStatus_text'
    ];

    // 获取沟通状态文本
//    public function getCommunicationStatusTextAttr($value, $data)
//    {
//        $value = $value ? $value : $data['communicationStatus'];
//
//        $valueArr = json_decode($value, true);
//        var_dump($valueArr);
//        return $valueArr;
////        return $valueArr ? implode(',', $valueArr) : '';
//    }
//
//    // 获取起诉状态文本
//    public function getLawsuitStatusTextAttr($value, $data)
//    {
//        $value = $value ? $value : $data['lawsuitStatus'];
//        $valueArr = json_decode($value, true);
//        return $valueArr ? implode(',', $valueArr) : '';
//    }

    // 获取判决文件URL（自动添加域名）
    public function getVerdictFileAttr($value)
    {
        if (!$value) {
            return $value;
        }
        $request = Request::instance();
        $domain = $request->domain();
        return $domain . $value;
    }
}